30 CALL CLEAR :: CALL SCREEN(2) :: CALL KEY(3,K,S)
32 DISPLAY AT(12,8):"*** COYOTE ***" :: CALL CHARSET :: FOR I=0 TO 9 :: CALL COLOR(I,2,4) :: NEXT I :: FOR I=1 TO 1000 :: NEXT I
40 CALL CLEAR :: CALL SCREEN(13) :: CALL COLOR(1,13,4,2,16,4)
50 CALL CLEAR :: CALL SCREEN(13) :: DISPLAY AT(2,1)BEEP
51 DISPLAY AT(4,1)BEEP :"NOME DEL COYOTE" :: ACCEPT AT(4,20)VALIDATE(UALPHA)SIZE(9):COY$
52 DISPLAY AT(6,1)BEEP :"NOME DELLA PECORA" :: ACCEPT AT(6,20)VALIDATE(UALPHA)SIZE(9):PEC$
53 DISPLAY AT(8,1):COY$
54 DISPLAY AT(9,1):"PRENDE IL JOYSTICK 1"
55 DISPLAY AT(11,1):PEC$
56 DISPLAY AT(12,1):"PRENDE IL JOYSTICK 2"
58 IF FL=0 THEN DISPLAY AT(19,1)BEEP :
60 DISPLAY AT(15,1):"NUMERO DI TURNI" :: ACCEPT AT(15,20)SIZE(1)VALIDATE(DIGIT):NT
100 CALL CLEAR :: RANDOMIZE
110 MM=1
111 CALL CHAR(108,"00000000120A0A5F5F5F3F3F1F00000000000000885050E0F6FFFFFBFF0E0000")! PECORA A TERRA
112 CALL CHAR(124,"00000000254949FFBF8F80C00000000000000000549292E0F0F8DE7140000000")! COYOTE IN ARIA
113 CALL CHAR(37,"000000002539CEFE0000001135ACEFFF00000000001A35FF00000000019746EF")
114 CALL CHAR(40,"00000000183C7E7F0000000000387CFE0000000000000E1F0000000000003078")
115 CALL CHAR(33,"000000002012B4FF000000804422ABFF000000000008125F00000000023145FF")
116 FOR I=1 TO 20 :: RR=INT(RND*23)+1 :: CC=INT(RND*24)+2 :: RIR=INT(RND*4)+2
117 FOR J=1 TO RIR :: CALL HCHAR(RR,CC+J,INT(RND*11)+33) :: NEXT J :: NEXT I
130 CALL CHAR(96,"000000028E7B1F0F0704040200000000000000000301F1FDFF9292A400000000")! COYOTE A SINISTRA
131 CALL CHAR(100,"000000028E7B1F0F0702020600000000000000000301F1FDFE9292B600000000")! COYOTE FERMO
132 CALL CHAR(104,"00000000C0808FBFFF494925000000000000004071DEF8F0E020204000000000")! COYOTE A DESTRA
133 CALL CHAR(112,"000070FFDFFFFF6F070A0A1100000000000000F8FCFCFAFAFA50504800000000")! PECORA A SINISTRA
134 CALL CHAR(116,"000070FFDFFFFF6F0709091300000000000000F8FCFCFAFAFA48485800000000")! PECORA FERMA
135 CALL CHAR(120,"0000001F3F3F5F5F5F0A0A120000000000000EFFFBFFFFF6E050508800000000")! PECORA A DESTRA
136 CALL CHAR(128,"00221C747C7F0F0707040402000000000000010101FEFCFCFC9292A4000000")! CANE A SINISTRA
137 CALL CHAR(132,"00221C747C7F0F0707040402000000000000010101FEFCFCFC9292A4000000")! CANE FERMO
138 CALL CHAR(136,"00008080807F3F3F3F494925000000000044382E3EFEF0E0E020204000000000")! CANE A DESTRA
139 CALL MAGNIFY(3)
140 CALL SPRITE(#1,100,2,100,50)
150 CALL SPRITE(#2,116,16,100,200)
155 CALL SPRITE(#3,128,7,70,200,INT(RND*11)-5,-40)
170 T=T+1
175 CALL JOYST(1,X,Y) :: CALL JOYST(2,A,B)
180 CALL MOTION(#1,-10*Y,10*X) :: CALL MOTION(#2,-8*B,8*A)
187 CALL COINC(ALL ,C) :: IF C<>0 THEN 300
200 CALL PATTERN(#1,100+X) :: CALL PATTERN(#2,116+A)
210 CALL COINC(ALL ,C)
220 IF C=0 THEN 170
300 CALL MOTION(#1,0,0,#2,0,0,#3,0,0)
310 CALL DISTANCE(#1,#2,DCOPE)
312 IF DCOPE<32767 THEN 320
314 CALL POSITION(#1,X1,Y1,#2,X2,Y2)
316 IF X1>192 OR X2>192 THEN DCOPE=(Y1-Y2)^2 :: GOTO 320
318 IF Y1>240 OR Y2>240 THEN DCOPE=(X2-X1)^2
320 CALL DISTANCE(#1,#3,DCOCA)
322 IF DCOCA<32767 THEN 330
324 CALL POSITION(#1,X1,Y1,#3,X2,Y2)
326 IF X1>192 OR X2>192 THEN DCOCA=(Y1-Y2)^2 :: GOTO 330
328 IF Y1>240 OR Y2>240 THEN DCOCA=(X2-X1)^2
330 CALL DISTANCE(#2,#3,DCAPE)
332 IF DCOPE<32767 THEN 340
334 CALL POSITION(#3,X1,Y1,#2,X2,Y2)
336 IF X1>192 OR X2>192 THEN DCAPE=(Y1-Y2)^2 :: GOTO 340
338 IF Y1>240 OR Y2>240 THEN DCAPE=(X2-X1)^2
340 IF DCOPE<DCOCA THEN D=1 :: DD=DCOPE ELSE D=2 :: DD=DCOCA
350 IF DCAPE<DD THEN DD=DCAPE :: D=3
360 ON D GOTO 400,500,600
400 CALL POSITION(#2,QX,QY) :: IF QX=4 THEN QX=5 ELSE IF QX=10 THEN QX=11
401 CALL LOCATE(#1,ABS(QX-4),QY) :: CALL PATTERN(#2,108)
402 FOR I=1 TO 3 :: CALL LOCATE(#1,ABS(QX-10),QY) :: CALL SOUND(20,-6,0) :: CALL LOCATE(#1,ABS(QX-4),QY) :: NEXT I
403 FOR I=1 TO 5 :: CALL SOUND(-100,260-I*5,0) :: NEXT I :: CALL DELSPRITE(#2)
405 PTOT=PTOT+T
410 DISPLAY AT(24,23)BEEP :T
415 FOR I=1 TO 100 :: NEXT I :: DISPLAY AT(24,23):""
419 N=N+1 :: DISPLAY AT(1,26):N :: IF N=NT THEN 700
420 T=0 :: GOTO 140
500 REM  CANE PRENDE COYOTE
505 CALL POSITION(#2,QX,QY) :: IF QX>184 THEN T=T-50 :: CALL SOUND(150,400,0) :: GOTO 515 ELSE T=T+50
507 CALL MOTION(#1,-50,50*MM) :: CALL SOUND(40,140,0) :: CALL SOUND(40,130,0) :: CALL PATTERN(#1,124) :: CALL MOTION(#1,0,0)
508 CALL MOTION(#1,50,50*MM) :: CALL SOUND(40,120,0) :: CALL SOUND(40,110,0) :: CALL MOTION(#1,0,0)
509 FOR I=0 TO 30 STEP 5 :: CALL SOUND(-100,-7,I) :: NEXT I
510 CALL PATTERN(#1,96)
515 FOR I=1 TO 100 :: NEXT I
520 GOTO 610
600 REM  CANE SI IMBATTE IN PECORA
605 FOR I=1 TO 6 :: CALL SOUND(-100,600+20*I,0) :: NEXT I
610 MM=-MM :: CALL PATTERN(#3,132+4*SGN(MM)) :: CALL MOTION(#3,INT(RND*11)-5,40*SGN(MM))
620 FOR I=1 TO 50 :: NEXT I
630 GOTO 170
700 CALL CLEAR :: CALL DELSPRITE(ALL)
710 CALL SCREEN(13) :: IF FLG=1 THEN 800
720 FLG=1 :: T=0 :: N=0
730 DISPLAY AT(3,1):PEC$&" E "&COY$ :: DISPLAY AT(5,1)BEEP :"SCAMBIATEVI I JOYSTICKS"
735 DISPLAY AT(20,1):"PUNTI DI "&PEC$&": " :: DISPLAY AT(20,21):PTOT :: PPR=PTOT :: PTOT=0
740 DISPLAY AT(9,1):"PRONTI ?" :: FOR I=1 TO 750 :: NEXT I
760 CALL CLEAR :: GOTO 100
800 CALL DELSPRITE(ALL) :: CALL SCREEN(13)
810 DISPLAY AT(2,1)BEEP :"PUNTEGGIO"
820 DISPLAY AT(4,1):PEC$&" :" :: DISPLAY AT(4,15):PPR
830 DISPLAY AT(6,1):COY$&" :" :: DISPLAY AT(6,15):PTOT
840 DISPLAY AT(8,1):"PREMERE UN TASTO"
850 DISPLAY AT(9,1):"PER GIOCARE ANCORA"
860 CALL KEY(0,S,Z)
870 IF Z=0 THEN 860
880 FL=1 :: PTOT=0 :: PPR=0 :: FLG=0 :: N=0 :: T=0
882 CALL CLEAR :: CALL SCREEN(13) :: GOTO 53
